An interrupt is a signal sent to a central processing unit (CPU) to inform the CPU of an event requiring immediate attention. An interrupt controller is a device responsible for delivering an interrupt to a CPU. An interrupt controller also may send interrupt handler information to a CPU. Interrupt handler information may include a memory address where an interrupt service routine is stored.
A CPU halts instruction processing and stores the existing execution state when an interrupt occurs. The CPU may then begin executing instructions of an interrupt service routine located at a specific memory address. On completion, the CPU may restore the previously saved execution state and resume instruction processing at the point where the interrupt occurred.
A virtual machine is a software-based emulation of a physical computing environment that includes its own virtual resources (e.g., CPU, RAM, disk storage, network connectivity, etc.). Virtual machines can simulate interrupts and interrupt processing to mimic operations that occur on a physical computing system.